Storage and exhibition of monitoring data are always keys of a monitoring system, the higher frequency for performing data collection with respect to a system to be monitored is, the larger an amount of the collected data is. Along with an increase of a collecting time, a problem of a slow storage of data and a slow retrieval of data will be resulted in. If the frequency for performing the collection is too low, the amount of the collected data is reduced, but it goes against an effective monitoring of a real-time health status of the system, and with respect to an important IT system (a system that cannot be interrupted for 7*24 hours), an importance of a background monitoring is self-evident, so there's a high demand for a reliable scheme design for the storage and retrieval (for a report presentation, historical statistics, and comparison) of the monitoring data.
With respect to the storage and retrieval of the monitoring data, the existing technical solution generally uses a common database for storage, and generally adopts the following method:
(1) Performing the storage and retrieval by an SQL database: the SQL database is mainly composed of a data storage module, a data query module and an expired data deleting module.
A. The data storage module: an asynchronous batch storage is adopted at a background to improve a data storage speed.
B. The data query module: a standard sql is adopted to perform a data query.
C. The expired data deleting module: it is inevitable to delete data before a time point, e.g., data before one month, in order to avoid a slow query speed due to too large amount of the data.
However, monitoring dimensionalities of the monitoring in the prior art will be generally limited by a designed table structure (the table structure is designed in accordance with services), and the newly added monitoring data generally can be only achieved by modifying a program code, which increases maintenance costs and limits expandability.